/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   Module Name          : com.yaodian100.ec.product.entity.Brand
   Module Description   :

   Date Created      : 2009/12/14
   Original Author   : ellen.li
   Team              : yaodian100
   ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   MODIFICATION HISTORY
   ------------------------------------------------------------------------------
   Date Modified       Modified by       Comments
   ------------------------------------------------------------------------------
   ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
package com.yaodian100.ec.product.entity;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import org.hibernate.annotations.GenericGenerator;
import org.hibernate.annotations.NamedQueries;
import org.hibernate.annotations.NamedQuery;
import org.hibernate.annotations.Parameter;

import com.yaodian100.core.common.entity.BaseEntity;

/**
 * @author ellen.li 品牌資料主檔
 */
@Entity
@Table(name = "EC_BRAND_MAIN")
@NamedQueries( {
		@NamedQuery(name = "Brand.getListIgnoreCase", query = "from Brand where UPPER(brandEname) like :brandEname order by modifyDate desc "),
		@NamedQuery(name = "Brand.getListStatusIgnoreCase", query = "from Brand where UPPER(brandEname) like :brandEname and brandStatus = :brandStatus order by modifyDate desc") })
public class Brand extends BaseEntity {

	/**
	 * serial version
	 */
	private static final long serialVersionUID = -1147710608874615686L;

	@Id
	@GeneratedValue(generator = "seq_ec_brandmain")
	@GenericGenerator(name = "seq_ec_brandmain", strategy = "com.yaodian100.core.common.dao.hibernate.SeqStringGenerator", parameters = {
			@Parameter(name = "sequence", value = "SEQ_EC_brandmain"), @Parameter(name = "pattern", value = "BD000000") })
	@Column(name = "BRAND_ID", length = 8)
	private String brandId;

	/**
	 * 品牌名稱(中文)
	 */
	@Column(name = "BRAND_NAME", length = 300)
	private String brandName;

	/**
	 * 品牌名稱(英文)
	 */
	@Column(name = "BRAND_ENAME", length = 300)
	private String brandEname;

	/**
	 * 品牌简称
	 */
	@Column(name = "BRIEF_NAME", length = 100)
	private String briefName;

	/**
	 * 品牌同义词
	 */
	@Column(name = "BRAND_SYNONYM", length = 1000)
	private String brandSynonym;

	/**
	 * 品牌状态
	 */
	@Column(name = "BRAND_STATUS", length = 1, nullable = false)
	private String brandStatus;

	/**
	 * 品牌故事
	 */
	@Column(name = "BRAND_STORY", length = 1000)
	private String brandStory;

	/**
	 * 品牌图档
	 */
	@Column(name = "BRAND_IMAGE", length = 200)
	private String brandImage;

	public String getBrandId() {
		return brandId;
	}

	public void setBrandId(String brandId) {
		this.brandId = brandId;
	}

	public String getBrandName() {
		return brandName;
	}

	public void setBrandName(String brandName) {
		this.brandName = brandName;
	}

	public String getBriefName() {
		return briefName;
	}

	public void setBriefName(String briefName) {
		this.briefName = briefName;
	}

	public String getBrandStatus() {
		return brandStatus;
	}

	public void setBrandStatus(String brandStatus) {
		this.brandStatus = brandStatus;
	}

	public String getBrandStory() {
		return brandStory;
	}

	public void setBrandStory(String brandStory) {
		this.brandStory = brandStory;
	}

	public String getBrandEname() {
		return brandEname;
	}

	public void setBrandEname(String brandEname) {
		this.brandEname = brandEname;
	}

	public String getBrandSynonym() {
		return brandSynonym;
	}

	public void setBrandSynonym(String brandSynonym) {
		this.brandSynonym = brandSynonym;
	}

	public String getBrandImage() {
		return brandImage;
	}

	public void setBrandImage(String brandImage) {
		this.brandImage = brandImage;
	}

}
